#include <stdio.h>
#include <string.h>
#include <stdbool.h>
#include <stdlib.h>

//写的什么垃圾代码。。。
int main()
{
	char input[9999] = {0}, n[3] = {0};
	int i = 0, leftNumber = 0, N = 0;
	bool isAdd = false;

	scanf("%s", &input);

	//获取指数的+\-号 和 指数
	leftNumber = strlen(input) - 3;
	if(input[leftNumber] == '+'){ 
		isAdd = true; 
	}else{ 
		isAdd = false; 
	}
	n[0] = input[leftNumber + 1];
	n[1] = input[leftNumber + 2];
	N = atoi(n);
	int backN = N;	
	//按正确格式输出, 第一个字符是+\-号，+号不需要输出
	if(input[i] == '-'){
		printf("%c", input[i]);
	}
	i++;
	if(isAdd){
		while(1){
			if(input[i] == '.'){
				i++;
				continue;
			}
			N--;
			if(i < leftNumber - 1){
				if(N == -2){
					printf(".");
					continue;
				}
				printf("%c", input[i]);
				i++;
				if(i > backN && i == leftNumber - 1){
					break;
				}
			}
			else{
				printf("0");
				if(N == -1){
					break;
				}
			}
		}
	}
	else{
		printf("0.");
		N--;
		while(1){
			if(N > 0){
				printf("0");
				N--;
				continue;
			}
			if(i < leftNumber - 1){
				if(input[i] == '.'){
					i++;
					continue;
				}
				printf("%c", input[i++]);
			}
			else{
				break;
			}
		}
	}
	printf("\n");	
	return 0;
}
